package git.soulbgm.pojo;

import java.util.Date;

import cn.afterturn.easypoi.excel.annotation.Excel;
import com.baomidou.mybatisplus.annotation.SqlCondition;
import com.baomidou.mybatisplus.annotation.TableField;

/**
 * 第三方软件状态表
 *
 * @author SoulBGM
 * @date 2020-11-18 10:03:05
 */
public class SoftwareStatus {

    /**
     * ID
     */
    private Long id;

    /**
     * 软件名称
     */
    @Excel(name = "软件名称")
    @TableField(condition = SqlCondition.LIKE)
    private String softwareName;

    /**
     * 软件进程名称
     */
    @Excel(name = "软件进程名称")
    @TableField(condition = SqlCondition.LIKE)
    private String processName;

    /**
     * 节点/设备编号
     */
    @Excel(name = "主机编号", type = 10)
    private Integer nodeCode;

    /**
     * 部署IP
     */
    @Excel(name = "部署IP")
    private String deployIp;

    /**
     * 检查端口 0 不进行端口检查 其它则进行检查
     */
    @Excel(name = "检查端口", type = 10)
    private Integer checkPort;

    /**
     * 软件启动时间
     */
    @Excel(name = "软件启动时间")
    private Long softwareStartupTime;

    /**
     * 检测时间
     */
    @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss")
    private Date detectionTime;

    /**
     * 区域编号 0代表不区分区域 其他为自定义
     */
    @Excel(name = "区域编号")
    private Integer regionCode;

    /**
     * 状态 0 未启动 1 正常 2 启动中 3 停止中
     */
    @Excel(name = "状态", replace = {"未启动_0", "正常_1", "启动中_2", "停止中_3"})
    private Integer status;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getSoftwareName() {
        return softwareName;
    }

    public void setSoftwareName(String softwareName) {
        this.softwareName = softwareName;
    }

    public String getProcessName() {
        return processName;
    }

    public void setProcessName(String processName) {
        this.processName = processName;
    }

    public Integer getNodeCode() {
        return nodeCode;
    }

    public void setNodeCode(Integer nodeCode) {
        this.nodeCode = nodeCode;
    }

    public String getDeployIp() {
        return deployIp;
    }

    public void setDeployIp(String deployIp) {
        this.deployIp = deployIp;
    }

    public Integer getCheckPort() {
        return checkPort;
    }

    public void setCheckPort(Integer checkPort) {
        this.checkPort = checkPort;
    }

    public Long getSoftwareStartupTime() {
        return softwareStartupTime;
    }

    public void setSoftwareStartupTime(Long softwareStartupTime) {
        this.softwareStartupTime = softwareStartupTime;
    }

    public Date getDetectionTime() {
        return detectionTime;
    }

    public void setDetectionTime(Date detectionTime) {
        this.detectionTime = detectionTime;
    }

    public Integer getRegionCode() {
        return regionCode;
    }

    public void setRegionCode(Integer regionCode) {
        this.regionCode = regionCode;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
}